package com.smarthome.core.propertymanager;

import java.util.List;

import com.smarthome.domain.bean.ShPropertyFee;
import com.smarthome.domain.vo.boss.DataGrid;
import com.smarthome.domain.vo.boss.PageHelper;

/**
 * 物业费用接口
 * 
 * @author hgj
 * 
 */
public interface PropertyMoneyService {

	/**
	 * 查询物业费用列表
	 * 
	 * @param page
	 * @param numId
	 * @return
	 * @author hgj
	 */
	DataGrid dataGrid(PageHelper page, Long numId);

	/**
	 * 根据小区id计算物业费用
	 * 
	 * @param residenId
	 */
	String doMoney(Long residenId);

	/**
	 * 根据门牌号和月份查询物业费 注：月份格式为2015年08月，setMonth放入查询对象中
	 * 
	 * @param fee
	 * @return
	 */
	List<ShPropertyFee> getByDoorIdAndMonth(ShPropertyFee fee);

	/**
	 * 根据门牌号ID和月份时间段，格式为2015年09月
	 * 
	 * @param fee
	 * @return
	 */
	List<ShPropertyFee> getByDoorIdAndBetweenMonth(ShPropertyFee fee);

	/**
	 * 根据ID修改物业费状态为已交：1
	 * 
	 * @param id
	 */
	void updateStatusById(Long id);

	/**
	 * 根据ID获取对象
	 * 
	 * @param id
	 * @return
	 */
	ShPropertyFee getFeeById(Long id);

}
